package com.zilu.digitaltwin.dto.geo;

import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

/**
 * @author :caijianbao
 * @date : 2023/1/7 13:22
 */
@Data
public class FeaturesDTO {

    @JsonProperty("type")
    private String type;
    @JsonProperty("properties")
    private PropertiesDTO properties;

    private JSONObject geometry;

    public FeaturesDTO() {
        this.type = "Feature";
    }

    @Data
    public static class PropertiesDTO {
        /**
         * 对应的实体对象id 库中的唯一标识
         */
        private String id;

        /**
         * 对应的实体code
         */
        private String entityCode;

        /**
         * 楼层数
         */
        private Integer floor;

        /**
         * 高度
         */
        private Double height;

        /**
         * 具体的对象名称
         */
        private String name;

        /**
         * 描述
         */
        private String desc;

        /**
         * 类型  告知是建筑物还是教育设施  三层目录的code
         */
        private String type;

        /**
         * 颜色
         */
        private String color;

        /**
         * 目录code
         */
        private String catalog;

        /**
         * 扩展属性 教育设施的时候 cnt,names,ids
         *        镇街聚合的时候propertyList,entityInfoList
         */
        private JSONObject extra;

    }

}
